Method and System for Self-Optimized Uplink Power Control

ABSTRACT

A method for optimizing uplink power control settings in a wireless network, the method comprising generating a first gene pool comprising a set of parent genes, wherein each parent gene comprises a set of first generation power control solutions for a set of base stations in the wireless network. The method may further include performing natural selection on the first gene pool to generate a second gene pool comprising selected ones of the set of parent genes, wherein the selected parent genes are chosen by probabilistically selecting some of the parent genes based on fitness values assigned to the parent genes. The method may further include evolving the second gene pool into a descendent gene, wherein the descendent gene comprises a set of local power control solutions for the set of base station in the wireless network.

This Application is a divisional application of U.S. Non-Provisionalapplication Ser. No. 13/586,464, filed on Aug. 15, 2012 and entitled“Method and System for Self-Optimized Uplink Power Control,” which ishereby incorporated by reference herein as if reproduced in itsentirety.

TECHNICAL FIELD

The present invention relates generally to optimizing uplink powercontrol in wireless communication systems.

BACKGROUND

Uplink power control (PC) is an important consideration in modern daycellular communication systems that rely on code division multipleaccess (CDMA) schemes, Orthogonal Frequency-Division Multiple Access(OFDMA) schemes, single carrier frequency division multiple access(SC-FDMA) schemes, etc. to manage uplink communications. Uplink PC may,for instance, control uplink transmissions in the Physical Uplink SharedChannel (PUSCH) of a long term evolution (LTE) wireless network.Specifically, uplink transmissions may undergo varying degrees of signalattenuation (e.g., path loss, etc.) as they travel through the PUSCH,and consequently may have a decreased power level upon reception. Thepower level of the uplink signals at reception may directly affectthroughput such that uplink signals with higher power levels atreception are able to carry data at a higher bit rate. Hence, one way toincrease the throughput of an individual uplink signal may be totransmit the uplink signal at a higher power level. However, increasingthe transmission power of one uplink signal may also increase the degreeto which that uplink signal interferes with other uplink signals in thePUSCH, thereby reducing the data throughput of those uplink signalsaccordingly. One way to address this problem is to develop an uplink PCsolution that governs the PC settings for each of the user equipments(UEs) in a coverage region. Effective uplink PC solutions should improvenetwork throughput while providing adequate coverage at the cell-edge.

An uplink PC solution may comprise a set of PC settings that controluser equipment (UE) uplink transmissions to prevent substantialinterference in the uplink channel. An optimal uplink PC solution mayreduce network interference while achieving satisfactory data-throughputfor all UEs in a base station's (BS's) coverage area, thereby maximizingthroughput while maintaining desired network coverage. Uplink PCsolutions may be computed locally at the BS level (referred to herein asthe “gradient search approach”) or globally at the network level(referred to herein as the “exhaustive search approach”). The uplink PCsolutions may be based on various PC computation schemes, includingfractional power control, interference based power control, cellinterference based power control, etc. While much of the discussionherein is in the context of a fractional power control scheme, theconcepts are equally applicable to other power control schemes.

In wireless systems that manage uplink PC via the gradient searchapproach, each BS may unilaterally compute its own uplink PC solutionbased on its own measured PC parameters (i.e., irrespective of the PCsolutions of other BSs). While the gradient search approach mayefficiently compute locally optimal PC solutions, it may fail to achievea globally optimal set of local PC solutions for the wireless networkbecause it may fail to account for the effect each local PC solutionwill have on neighboring BSs. Specifically, changing a PC setting for aUE in one coverage area may affect the interference realization of aneighboring base station.

In wireless systems that manage uplink PC via the exhaustive searchapproach, a centralized PC controller may compute a globally optimizedset of uplink PC solutions based on an exhaustive search of all possibleuplink PC solutions for a cluster of proximately located base stations.Specifically, the globally optimized set of uplink PC solutions may becomputed based at least in part on PC parameters reported by the clusterof BSs. While the exhaustive search approach may effectively compute aglobally optimized set of PC solutions, the complex nature of thecomputation may consume large amounts of network resources (e.g.,processing capacity, time, etc.). As such, a less computationallycomplex approach for finding a globally optimal set of uplink PCsolutions is desired.

SUMMARY OF THE INVENTION

Technical advantages are generally achieved, by preferred embodiments ofthe present invention which describe system and methods for optimizinguplink power control.

In accordance with an embodiment, a method for optimizing uplink powercontrol settings in a wireless network, the method comprising receivinga plurality of power control parameter logs from a plurality of basestations in the wireless network. The method may further comprisegenerating a set of parent genes, wherein each parent gene comprises aset of first generation power control solutions, and wherein each set offirst generation power control solutions includes a local power controlsolution for each base station. The method may further comprise evolvingthe set of parent genes into a set of descendent genes, wherein eachdescendent gene comprises a set of evolved power control solutions, andwherein each set of evolved power control solutions includes an evolvedlocal power control solution for each base station. The method mayfurther comprise evaluating a fitness of each descendent gene. Themethod may further comprise identifying a fittest descendent gene out ofthe set of descendent genes, wherein the fittest gene comprises anoptimized global power control solution. The method may further comprisebroadcasting the optimized global power control solution to theplurality of base stations.

In accordance with another embodiment, an apparatus for optimizinguplink power control in a wireless network, the apparatus comprising aprocessor and a computer readable storage medium storing programming forexecution by the processor. The programming may include instructions toreceive a set of power control parameters from a set of base stations inthe wireless network. The programming may further includeprobabilistically determining an optimized global power control solutionfor the wireless network, wherein the optimized global power controlsolution comprises a set of local power control solutions that arecomputed by iteratively performing a power control optimizationalgorithm based at least in part on the set of power control parameters,and wherein the optimized global power control solution is determinedwithout performing an exhaustive search of substantially all possiblepower control solutions for the wireless network. The programming mayfurther include sending the optimized global power control solution tothe set of base stations in the wireless network.

In accordance with yet another embodiment, a method for optimizinguplink power control settings in a wireless network, the methodcomprising generating a first gene pool comprising a set of parentgenes, wherein each parent gene comprises a set of first generationpower control solutions for a set of base stations in the wirelessnetwork. The method may further include performing natural selection onthe first gene pool to generate a second gene pool comprising selectedones of the set of parent genes, wherein the selected parent genes arechosen by probabilistically selecting some of the parent genes based onfitness values assigned to the parent genes. The method may furtherinclude evolving the second gene pool into a descendent gene, whereinthe descendent gene comprises a set of local power control solutions forthe set of base station in the wireless network.

As used herein, the terms “evolve”, “evolving” and “evolution” pertainto a process by which a new variant (or generation) of a gene (e.g., adescendent or child gene) is obtained through transformation of one ormore ancestor or parent genes. In embodiments, evolution may includeperforming one or more transformative processes in accordance with thefitness of one or more current generation genes. These transformativeprocesses may include, but are not limited to, selection, crossover, andmodification (also referred to as “mutation”), for which: (a) Selectionprovides for probabilistic selection of genes in accordance with suchconsiderations as fitness, as indicated by a fitness value; (b)Crossover provides for generation of a new gene by combining a portionof criteria such as power control settings from one gene, and combiningsuch criteria with a similar or identical criteria from a differentgene; and (c) Mutation provides for a change in criteria (such as someor all of the gene's power control settings). Evolution may includetransformative process other than those expressly discussed herein.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention, and theadvantages thereof, reference is now made to the following descriptionstaken in conjunction with the accompanying drawings, in which:

FIG. 1 illustrates a wireless network architecture;

FIG. 2 illustrates a wireless network architecture comprising PCcontrollers;

FIG. 3 illustrates a diagram of an embodiment of a communicationprotocol for implementing uplink PC optimization in a wirelesscommunication network;

FIG. 4 illustrates a flowchart of an embodiment of a method forperforming uplink PC optimization in a wireless communication network;

FIG. 5 illustrates a flowchart of an embodiment of a method forperforming an uplink PC optimization algorithm;

FIG. 6 illustrates an embodiment of a probability wheel for performingnatural selection;

FIG. 7 illustrates a flowchart of another embodiment of a method forperforming an uplink PC optimization algorithm;

FIG. 8 illustrates a diagram of another embodiment of a communicationprotocol for implementing uplink PC optimization in a wirelesscommunication network;

FIG. 9 illustrates an example of simulation results obtained using anembodiment of uplink PC optimization in a wireless communicationnetwork;

FIG. 10 illustrates another example of simulation results obtained usingan embodiment of uplink PC optimization in a wireless communicationnetwork;

FIG. 11 illustrates another example of simulation results obtained usingan embodiment of uplink PC optimization in a wireless communicationnetwork;

FIG. 12 illustrates a block diagram of an embodiment base station; and

FIG. 13 illustrates a block diagram of an embodiment PC controller.

Corresponding numerals and symbols in the different figures generallyrefer to corresponding parts unless otherwise indicated. The figures aredrawn to clearly illustrate the relevant aspects of the preferredembodiments and are not necessarily drawn to scale.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

The making and using of the presently preferred embodiments arediscussed in detail below. It should be appreciated, however, that thepresent invention provides many applicable inventive concepts that canbe embodied in a wide variety of specific contexts. The specificembodiments discussed are merely illustrative of specific ways to makeand use the invention, and do not limit the scope of the invention.

For purposes of clarity and concision, uplink PC solutions will bereferred to herein simply as “PC solutions”. As used herein, the term“local PC solution” may refer to a set of PC settings computed for theUEs of a single BS, while the term “global PC solution” may refer to aset of local PC solutions computed for a set of BSs in a wirelessnetwork. A “set of locally optimized PC solutions” may refer to a set oflocal PC solutions that have been computed unilaterally (i.e.,irrespective of one another's PC settings), while the term “optimumglobal PC solution” may refer to about the best set of local PCsolutions for achieving a desired uplink performance level (e.g.,coverage, throughput, etc.) in a wireless network (or cluster of BSs).For instance, the gradient approach may generate a set of locallyoptimized PC solutions, while the exhaustive search approach maygenerate an optimum global PC solution.

As referred to herein, the term “optimized global PC solution” may referto a set of PC solutions that achieve acceptable performance levels fora wireless network as defined by an administrator or wireless serviceprovider. Importantly, the term optimized may be used loosely herein,and may not necessarily infer that a referenced PC solution isequivalent to the optimum global PC solution. The term “PC optimizationalgorithm” may refer to an algorithm for computing an “optimized globalPC solution.” Importantly, the term optimization may be used looselyherein, and may not necessarily infer that a referenced algorithm willgenerate the optimum global PC solution. For instance, an optimizedglobal PC solution may not necessarily include the best possible set oflocal PC solutions as would be achieved by an exhaustive search.Instead, an optimized global PC solution may infer that the referencedPC solution includes a satisfactory set of local PC solutions that havebeen globally optimized (to some extent) using one or more of thenon-exhaustive techniques discussed below. Depending on the degree ofoptimization, an optimized global PC solution may perform almost as well(or equally as well) as the optimum global PC solution, while beinggenerated through less computationally complex techniques (e.g., incomparison to an exhaustive search approach). In some embodiments, thedifference in performance between an optimized global PC solution andthe optimal global PC solution may be either negligible or outweighed byadvantages in computational efficiency.

As discussed below, PC solutions may be computed based upon, inter alia,PC parameters. As used herein, the term “PC parameters” may encompass“PC settings”, “PC parameter statistics”, or both. The term “PCparameter statistics” may refer to any quantifiable metric (e.g.,interference over thermal (IoT), path loss (PL), channel gain, etc.)that describes a quality or characteristic of an uplink signaltransmission, while the term “PC setting” may refer any setting (e.g.,power, frequency, etc.) used to control uplink signal transmissions. PCparameter statistics may be affected by a variety of dynamic factors,including the PC settings used to generate the uplink signal, and otherfactors such as shadowing, path loss, multipath fading, etc.

FIG. 1 illustrates a wireless network 100 comprising a first BS 110, afirst plurality of UEs 115, a second BS 120, and a second plurality ofUEs 125. The BS 110 may serve the UEs 115, and the BS 120 may serve theUEs 125. The BS 110 may have a coverage area 160, and the BS 120 mayhave a coverage area 170. In some embodiments, the coverage areas 160and 170 may overlap, and one or more of the UEs 115 or the UEs 125 maybe located within the overlap region.

Uplink transmissions (dashed arrows) from the UEs 115 and 125 mayexperience interference in the network 100. For instance, uplinktransmissions from the UEs 115 may interfere with one another, as wellas with uplink transmissions from the UEs 125. In some instances, higheruplink power levels may produce more interference, and hence uplinktransmissions may interfere with one another to a greater degree asuplink power is increased. As such, PC solutions implemented by the BS110 may affect the signal quality of uplink transmissions received bythe BS 120, and vice-versa. Consequently, it may be beneficial tocluster the BSs 110 and 120, as well as other nearby BSs (not shown),when computing PC solutions.

FIG. 2 illustrates a wireless network 200 comprising a PC controller201, a PC controller 202, and a plurality of BSs 230-290. The PCcontrollers 201-202 may be any device capable of computing PC solutionsfor the wireless network 200 based on PC parameters provided by the BSs230-290 and/or other configuration data. The BSs 230-290 may beconfigured similar to the BSs 110 and 120, and may serve a plurality ofUEs, which are not depicted in FIG. 2 for purposes of clarity andconcision. The PC controller 201 may perform PC computations for BSslocated in the proximity area 210, while the PC controller 202 mayperform PC computations for BSs located in the proximity area 220.Hence, the PC controller 201 may serve the BSs 230-260, while the PCcontroller 202 may serve the BSs 270-290.

FIG. 3 illustrates a communication protocol 300 for PC computationbetween a pair of PC controllers 301-302 and a plurality of BSs 330-390.The PC controllers 301-302 may be configured similarly to the PCcontrollers 201-202, and the BSs 330-390 may be configured similarly tothe BSs 230-290. As shown, the BSs 330-390 may communicate PC parameters(dashed arrow) to the PC controllers 301-302, after which the PCcontrollers 301-302 may subsequently communicate PC solutions (solidarrows) to the BSs 330-390. Additionally, the PC controllers 301-302 maycommunicate PC parameters, PC solutions, and/or other configuration datawith one another (double arrowhead).

FIG. 4 illustrates a flowchart of a method 400 for performing uplink PCoptimization in a wireless communication network. The method 400 maybegin at step 410, where the BSs may report PC parameters to the PCcontrollers in the form of a log. The PC parameters may include currentPC settings, as well as PC parameter statistics including path lossinformation, the top N interferes (where N is an integer greater thanzero), measured IoTs, and other pertinent information. The PC parametersmay allow the PC controller to determine a payoff (or aggregate benefit)of a computed PC solution, which may be defined as the differencebetween a revenue (e.g., gains in some BSs' performance) and a cost(e.g., loss in other BSs' performance) for a global PC solution. Themethod 400 may then proceed to step 420, where the PC controllers maydistribute the PC parameters and/or other configuration informationamongst themselves. By sharing of PC parameters and/or configurationdata, the PC controllers may be able to achieve parallel optimization.However, in embodiments where communication between the neighboring PCcontrollers is infeasible or impractical, and the step 420 may beomitted entirely. In some embodiments, the PC controllers may exchangemessages via external interfaces, or external interfaces may be used tomonitor the PC communications.

Next, the method 400 may proceed to step A 430, where an uplinkoptimization algorithm may be performed by the PC controllers. In someembodiments, a non-generic uplink optimization algorithm (e.g., asillustrated in FIG. 5) may be performed to achieve a globally optimizedPC solution. In other embodiments, a generic PC optimization algorithm(e.g., as illustrated in FIG. 7) may be performed to obtain a globallyoptimized PC solution.

FIG. 5 illustrates a method 500 for performing a PC optimizationalgorithm, which may come after step A 430. Although the method 500 maybe described in the context of a fractional PC scheme, concepts appliedduring the method 500 may be equally applicable to other PC schemes(e.g., using other PC solution parameters). The method 500 may begin atstep 510, where the PC processor may collect PC parameter statistics(e.g., IoT, PL, etc.) from the BSs. For instance, each BS may reporttheir average IoT per resource block (RB) in the frequency domain, UEprofiles, and the profiles of the strongest interferers. Subsequently,the method 500 may proceed to step 520, where the PC processor maygenerate a plurality of parent genes.

As used herein, the term “gene” may refer to an array or group of PCsolutions corresponding to the group of BSs served by the PC processor,with each PC solution corresponding to a respective one of the BSsassigned to the PC processor. The term “parent gene” may refer to a genethat precedes a descendent gene, and the term “descendent gene” mayrefer to any gene that is produced from one or more parent genes via anevolutionary step, e.g., crossover, mutation, etc. In some embodiments,the original parent genes may comprise first generation PC solutions,while descendent genes may comprise evolved power control solutions. Asused herein, an ancestor gene may be any gene that contributed to theevolution of a next generation gene, even if the ancestor gene isseveral evolutionary iterations removed from the next generation gene.

Each gene may comprise the same number of PC solutions as there are BSsin the cluster. For instance, if a PC controller is assigned twenty BSs,then each gene created in step 520 may include twenty PC solutions. Inan embodiment, the PC controller may generate N parent genes (where N isan integer greater than zero), with each gene representing a feasible orpossible global PC solution. In some embodiments, the PC settings ofeach parent gene may be identical upon initialization, such that anacceptable operating point is reached completely through crossover andmutation (discussed below). In other embodiments, at least some of theparent genes may have differing PC settings upon initialization. Forinstance, the PC settings for the various genes may be assigned randomlyin order to achieve gene pool randomization, which may allow thealgorithm to reach an acceptable global PC solution (e.g., an optimizedglobal PC solution) using fewer evolutionary iterations.

Subsequently, the method 500 may proceed to step 530, where the PCprocessor may perform an IoT estimation for each of the genes generatedby step 520. Specifically, during step 530, the PC controller mayestimate an IoT of each RB for each BS based on the PC settings of eachgene. Hence, an IoT spectrum may be generated for each gene. In someembodiments, other PC parameter statistics (e.g., path loss, etc.) maybe estimated in addition to (or in place of) the IoT spectrum. Innetworks implementing a fractional PC scheme, there may be two PCsolution parameters (P₀, α) defined for each BS by each gene. As usedherein, the term “PC solution parameters” may refer to any setting thatmay be manipulated during crossover and/or mutation to evolve the gene.In fractional PC systems, a BS_(m) may compute the interference of anUE_(j)'s uplink channel (m and j are integers) based on real PC solutionparameters (P_(j), α_(j)) of the UE_(j) using the formula:

${I_{j,m} = {\left( \frac{p_{j}}{g_{j,s}^{\alpha \; j}} \right)g_{j,m}}},$

where g_(j,m) is the channel gain (negative path loss) of UE_(j) to theBS_(m) and g_(j,s) is the channel gain of the UE_(j) to a serving BS(BS_(s)) and (P_(j), α_(j)) are the PC solution parameters of theUE_(j). As such, the BS_(m) may estimate the interference of a UEj basedon the proposed power control parameters (

, {tilde over (α)}) of a given gene using the formula:

${\overset{\sim}{I}}_{j,m} = {\left( \frac{{\overset{\sim}{p}}_{j}}{g_{j,s}^{\overset{\sim}{\alpha}j}} \right){g_{j,m}.}}$

Consequently, the IoT_(m) of each BS_(m) can be estimated according tothe formula:

${{\overset{\sim}{IoT}}_{m} \approx {{IoT}_{m,{ref}}\left( \frac{{\sum_{j}{\overset{\sim}{I}}_{j,m}} + \sigma^{2}}{{\sum_{j}I_{j,m}} + \sigma^{2}} \right)}},$

where σ² is thermal noise power, IoT_(m,ref) is the reference IoT ofBS_(m) obtained from the current power control settings in the realsystem, and

_(m) is the IoT estimate of the BS_(m) with (

, {tilde over (α)}).

After estimating IoT, the method 500 may proceed to step 540, where thePC processor may perform virtual scheduling for each gene based on theIoTs estimated in step 530. The virtual scheduling may be similar toreal scheduling in that virtual scheduling may be performed for each BSincrementally (i.e., on a per BS basis). However, unlike realscheduling, virtual scheduling may lack channel quality feedback, and,as a result, may be performed using fixed channel quality indicators(CQIs), e.g., performed under the assumption that the channels and IoTsare constant/static. Virtual scheduling may be performed for each gene aset number of times, with the average bit rate (R_(avg)) for each UEbeing updated after each round of virtual scheduling. Further, virtualscheduling may assume the instantaneous bit rate (R_(ins)) is constant(again, because of a lack channel quality feedback), and consequentlyvirtual scheduling decisions may be made solely on the basis of R_(avg).After all rounds of virtual scheduling have been completed, the PCcontroller may estimate one or more performance metrics (e.g., user/cellthroughput, etc.) for each gene.

Subsequently, the method 500 may proceed to step 550, where the PCprocessor may perform a fitness evaluation of each gene, with geneshaving higher fitness values being more likely to be chosen duringnatural selection in step 570. Fitness values may be assigned based onone or a combination of various fitness metrics. For instance, a fitnessvalue may be assigned based on the linear combination of coverage andsum throughput as given by the following equation:Fitness_(g)=ωf₁({right arrow over (T_(g))})+(1−ω)f₂({right arrow over(T_(g))}), where {right arrow over (T_(g))} is a set of user throughputsgiven gene g, f₁({right arrow over (T_(g))}) is the normalized sumthroughput performance, f₂({right arrow over (T_(g))}) represents thethroughput performance (e.g., five percentile throughput performance),and co is a tunable weighting factor. The fitness evaluation can beextended to include different performance metrics such as maximumthroughput, minimum throughput, sum log throughout, fairness measure,energy consumption, as well as others familiar to those of ordinaryskill in the art.

Subsequently, the method 500 may proceed to step 560, where the PCprocessor may determine whether a stop condition has been reached. Thestop condition may be a specified number of rounds of evolution, as theresulting PC solution will become further optimized with each successiveround of evolution. If a stop condition has not be reached (as is likelythe case during the first iteration), then the method 500 may proceed tostep 570, where the PC processor may perform evolution to improve thegenes. Evolution may comprise three evolutionary steps: (a) naturalselection; (b) crossover; and (c) mutation. Natural selection may be theprocess of selecting a set of selected parent genes from the originalparent gene in a probalistic fashion based on their fitness value. In anembodiment, the set of selected parent genes may comprise a gene pool ofsize S (S is an integer), while the set of original parent genes maycomprise a gene pool of size N. In some embodiments, N may be greaterthan S such that the size of the gene pool decreases with eachevolutionary iteration. In other embodiments, S may be equal to orgreater than N such that the size of the gene pool stays the same orincreases with each evolutionary iteration. Natural selection may bebetter understood when referencing FIG. 6.

Specifically, FIG. 6 illustrates a probability wheel 600 comprising aplurality of genes. Genes having higher fitness values receive higherassigned probabilities (i.e., more real-estate on the probability wheel600), and are therefore more likely to be chosen for the S gene pool.One objective of natural selection may be to retain strong genes whileallowing poor genes to evolve, as poor genes may potentially becomebetter candidates after the crossover and mutation steps. Allowing thepoorer genes to evolve may be important in that it prevents locallyoptimal PC solutions from being trapped (or locked) during optimization.Subsequent to selecting two genes during natural selection, one or morenew offspring genes may be generated by performing a crossover operationon the two selected genes. The crossover operation may generate a firstoffspring gene by combining the P_(o) of a first selected gene with thea of a second selected gene, and a second offspring gene by combiningthe a of the first selected gene with the P_(o) of the second selectedgene. After crossover, the PC controller may perform mutation on theoffspring gene to generate a mutated gene. The mutation operation mayperturb/change the PC solution parameters (P_(o), α) of the offspringgene to produce the mutated gene. Hence, the mutated gene may containslightly altered P_(o) and/or α values, and therefore the fitness of themutated gene may differ somewhat from the fitness of offspring gene.Once a stop condition has been reached, the method 500 may proceed tostep 580, where the PC controller may determine whether furtherrefinement is needed. If further refinement is needed, the method 500may terminate at step B 590 (discussed below). If no refinement isneeded, the method 500 may terminate at step C 595 (also discussedbelow).

Assuming no further refinement is needed, the method 400 (referringagain to FIG. 4) may proceed to step 440, where the PC controllers maybroadcast the optimized global PC solution to the respective BSs towhich they have been assigned. These messages may be observable byexternal interfaces. Next, the method 400 may proceed to step 450, wherethe BSs may broadcast the updated PC settings to the UEs. At step 460,the method 400 may determine whether a stop condition has been reached.The stop condition may be a specified number of rounds of the method400, e.g., with a counter being incremented each time the method 400reaches the step 460.

Assuming further refinement is needed, the method 400 (referring againto FIG. 4) may proceed to step 470, where the PC controllers maybroadcast the optimized PC solutions and/or PC settings to theirrespective BSs (i.e., the BSs to which they have been assigned or whichare located in their assigned proximity region). These messages may beobservable by external interfaces. Next, the method 400 may proceed tostep 480, where the BSs may broadcast the updated PC settings to theUEs. Subsequently, the method 400 may proceed to step 410, where thesteps 410-430 and the method 500 may be repeated until furtherrefinement is no longer necessary.

Refinement may be necessary when evolutionary progression is ineffectivein generating an optimized global PC solution. Specifically, theeffectiveness of evolutionary progression in reaching an optimizedglobal PC solution may ultimately be limited by the accuracy of the IoTestimations performed in step 530. For instance, less accurate IoTestimations may produce inferior global PC solutions irrespective of thenumber of evolutionary iterations. As such, re-performing IoT estimationbased on a new set of reference IoTs (i.e., reference IoTs obtainedsubsequent PC parameters obtained after implementing the evolved gene)may produce a higher level of optimization than simply repeating theevolutionary progression using the same (potentially inaccurate) IoTestimations.

FIG. 7 illustrates an embodiment of a method 700 for performing a PCoptimization algorithm, which may be an alternative to the method 500discussed above. The method 700 may begin at step 710, where the PCsolution parameters of the BSs may be denoted. Specifically, a first PCsolution parameter (p_(i)) may be denoted as the PC solution parameterof a BSi, and a grouping of second PC parameters (p⁻¹) may be denotedfor the other BSs (i.e., BSs other than BSi), where p_(−i)={p₀, . . .,p_(i−1),p_(i+1), . . . ,p_(m)}. Further, a vector ({right arrow over(p)}) of PC parameters for all the BSs may be denoted, where {rightarrow over (p)}=[p_(i),p_(−i)]. Additionally, the utility the BSi may bedenoted as U_(i)(p_(i),p_(−i)). Next, the method 700 may proceed to step720, where a metric may be defined to evaluate the performance of theBSs in a cluster at a time (t). Specifically, the metric may be afunction of all the utilities f(U₁({right arrow over (p)}), . . . ,U_(n)({right arrow over (p)}))|t. Next, the method 700 may proceed tostep 730, where the {right arrow over (p)} may be updated according toan underlying PC optimization design. For instance, {right arrow over(p)} may be updated based on a faction that considers all of the variousutilities over a time spectrum, e.g., (U₁({right arrow over (p)}), . . ., U_(n)({right arrow over (p)}))|t+1>f(U₁({right arrow over (p)}), . . ., U_(n)({right arrow over (p)}))|t. Next, the method 700 may proceed tostep 740, where the PC controller may determine whether a stop conditionhas been reached. The stop condition may be a certain number ofiterations of the step 730, or some other metric related to the qualityof the computed PC optimization algorithm. If a stop condition has notbeen reached, the method 700 may revert back to the step 730, where thePC parameters may be re-updated. If a stop condition has been reached,the method 740 may terminate at step D 795.

After performing the optimization algorithm, the method 400 may proceedto the step 440, where the PC controllers may broadcast the optimized PCsolutions (i.e., the PC settings) to their respective BSs (i.e., the BSsto which they have been assigned or which are located in their assignedproximity region). These messages may be observable by externalinterfaces. Next, the method 400 may proceed to step 450, where the BSsmay broadcast the updated PC settings to the UEs. At step 460, themethod 400 may determine whether a stop condition has been reached. Thestop condition may be a certain number of iterations of the steps410-450, or some metric related to the quality of a global PC solution'sperformance. If a stop condition has not been reached, the method 400may revert back to step 410, where the steps 410-450 (and if necessary,other intervening steps) may be repeated until a stop condition isreached. Once a stop condition is reached, the method 400 may end.

FIG. 8 illustrates a diagram of a protocol Boo for implementing uplinkoptimization. The protocol 800 may take place between a PC controller801 and a plurality of BSs 830-860, and may comprise exchanging aplurality of PC settings (e.g., S_(o), S₁, . . . S_(n)) and a pluralityof PC statistic logs (L_(o), L₁, . . . L_(n)). The protocol 800 mayoccur over a time spectrum (Ti), during which a PC optimizationalgorithm may be generated. The protocol 800 may begin with a broadcastmessage 865 sent from the PC controller 801 to the BSs 830-860, whichmay carry an initial set of PC settings (S_(o)). Upon receiving thebroadcast message 865, the BSs 830-860 may implement the initial PCsettings, and generate a set of PC parameter statistics based on thoseinitial PC settings. The BSs may then summarize or aggregate thegenerated PC parameter statistics into PC parameter logs (L_(o)), whichmay be forwarded to the PC controller 801 via the messages 870. Uponreceiving the messages 870, the PC controller 801 may compute anoptimization algorithm to generate a first set of optimized PC settings(S₁). The time required to compute the optimization algorithm (T_(c))may vary depending on a variety of factors, including the type ofoptimization algorithm used, as well as the computation settings of theoptimization algorithm (e.g., stop conditions, etc.). Upon computing thefirst set of optimized PC settings, the PC controller 801 may send thosesettings to the BSs 830-860 via the broadcast message 875. The PCcontroller 801 and the BSs 830-860 may continue to exchange parametersettings (S₂ through S_(n-1)) and parameter statistic logs (L₁ throughL_(n-1)) until an optimized global PC solution is reached. Uponcalculating an optimized global PC solution, the PC controller 801 maysend the PC settings (Se) corresponding to that solution to the BSs830-860 via the broadcast message 885. In some embodiments, the BSs830-860 may return a PC parameter log (La) to the PC controller 801 viathe messages 890, which may correspond to PC parameters generated as aresult of implementing the optimized global PC solution in the wirelessnetwork. In other embodiments, the protocol 800 may not include themessages 890.

FIGS. 9-11 illustrate simulation results obtained using an embodiment ofthe uplink optimization method discussed above. The simulation wasperformed under the following assumptions: Objective function was tooptimize linear combination of normalized sum throughput and normalizedcoverage (30% on normalized sum throughput+70% on normalized coverage);Decision variables were fractional power control parameters P_(o) and α;there were twenty-five UEs per coverage area (cell) and fifty sevencells; and inter-site distance (ISD) was 500 meters.

FIG. 9 shows a graph 900 showing the sum throughput of a cellularnetwork (i.e., the overall throughput) with the cell-edge throughput(i.e., the throughput of UEs on the “edge” of a BS's coverage area) inrelation to iterations of the optimization algorithm. Cell-edgethroughput and overall throughput may be important metrics forevaluating a global PC solution in a wireless network. Customers innetworks with low overall throughput may observe slow connection speeds,while customers in networks with low cell-edge throughput may, forinstance, observe higher instances of dropped calls as they migrate fromone coverage area to another. Each of the plot lines in the graph 900represent a different initial set of PC solution parameters (α, P_(o))as shown in the key on the bottom right, with each of the markers(denoted by the circles) indicating an iteration of PC optimization. Asshown, the global PC solutions converge to a region of desirableoperating points after one or two rounds of PC optimization(irrespective of how aggressive or conservative the initial PC solutionparameter settings), which suggests that some embodiments of the uplinkoptimization method disclosed herein will perform reliably over a widerange of PC solution parameter settings. Notably, the range of desirablePC solution parameter settings may change if the utility function forfitness evaluation or a weighting factor is changed, which may be doneat the discretion of a system designer.

FIG. 10 illustrates a histogram 1000 of PC solution parameter settingschosen by the proposed algorithm considering all the different initialPC settings. The height of each bar may correspond to the number oftimes a PC setting is chosen by the proposed PC optimization algorithm.FIG. 11 illustrates the corresponding system performances of the winner,the first runner up, and the second runner up for an objective functionplacing seventy percent emphasis on coverage, and a thirty percentemphasis on throughput. The winner had PC solution parameter (α, P_(o))of (−102, 1.0), the first runner up had PC parameter settings (α, P_(o))of (−104, 1.0), and the second runner-up had PC parameter settings (α,P_(o)) of (−92, 0.9). FIG. 11. Illustrates a graph 1100 of thecorresponding performances of the winner, the first runner up, and thesecond runner up. These results were verified by an exhaustive search.

In wireless networks, network operators may often trade coverage foroverall throughput. Specifically, UEs positioned on the “edge” of a BS'scoverage area may produce high levels of interference in neighboringcoverage areas due to their proximity to those neighboring coverageareas as well as their need to transmit uplink signals at a higher powerlevel. As such, lowering the uplink power of cell-edge UEs may decreasenetwork interference, thereby increasing overall network throughput.However, providing acceptable coverage to cell-edge UEs may be animportant consideration as well, and consequently most networks mustbalance overall throughput and cell-edge throughput to meet the needs oftheir customers. Accordingly, embodiments of the disclosed PCoptimization method may allow an operator to specify the balance byadjusting the settings of the optimization algorithm's objectivefunction. For instance, the simulation results were generated using anembodiment that specified an objective function placing a seventypercent emphasis on coverage, and a thirty percent emphasis onthroughput. However, other embodiments may place a different emphasis oncoverage and throughput, e.g., a ninety percent emphasis on coverage anda ten percent emphasis on throughput.

FIG. 12 illustrates a block diagram of an embodiment base station 1200.The base station 1200 may include a PC controller interface 1202, aprocessor 1204, a memory 1205, a transmitter 1206, a receiver 1208, acoupler 1210, and an antenna 1212, which may be arranged as shown inFIG. 12. The PC controller interface 1202 may be any component orcollection of components that allows the BS 1200 to engage in networkcommunications with a PC controller. The processor 1204 may be anycomponent capable of performing computations and/or other processingrelated tasks, and the memory 1205 may be any component capable ofstoring programming and/or instructions for the processor. Thetransmitter 1206 may be any component capable of transmitting a signal,while the receiver 1208 may be any component capable of receiving asignal. The coupler 1210 may be any component capable of isolating atransmission signal from a reception signal, such as a duplexer. Theantenna 1212 may be any component capable of emitting and/or receiving awireless signal. In an embodiment, the BS 1200 may be configured tooperate in an LTE network using an OFDMA downlink channel divided intomultiple subbands or subcarriers and using SC-FDMA in the uplink. Inalternative embodiments, other systems, network types and transmissionschemes can be used, for example, 1×EV-DO, IEEE 802.11, IEEE 802.15 andIEEE 802.16, etc.

FIG. 13 illustrates a block diagram of an embodiment PC controller 1300.The PC controller 1300 may include a BS interface 1302, a processor1304, a memory 1305, and a PC controller interface 1308, which may bearranged as shown in FIG. 13. The BS interface 1302 may be any componentor collection of components that allows the PC controller 1300 to engagein network communications with a BS. The processor 1304 may be anycomponent capable of performing computations and/or other processingrelated tasks, and the memory 1305 may be any component capable ofstoring programming and/or instructions for the processor. The PCcontroller interface 1308 may be any component or collection ofcomponents that allows the PC controller 1300 to engage in networkcommunications with other PC controllers.

Although the present invention and its advantages have been described indetail, it should be understood that various changes, substitutions andalterations can be made herein without departing from the spirit andscope of the invention as defined by the appended claims. Moreover, thescope of the present application is not intended to be limited to theparticular embodiments of the process, machine, manufacture, compositionof matter, means, methods and steps described in the specification. Asone of ordinary skill in the art will readily appreciate from thedisclosure of the present invention, processes, machines, manufacture,compositions of matter, means, methods, or steps, presently existing orlater to be developed, that perform substantially the same function orachieve substantially the same result as the corresponding embodimentsdescribed herein may be utilized according to the present invention.Accordingly, the appended claims are intended to include within theirscope such processes, machines, manufacture, compositions of matter,means, methods, or steps.

What is claimed is:
 1. A method comprising: receiving a set of powercontrol parameters from a set of base stations in a wireless network;probabilistically determining an optimized global power control solutionfor the wireless network, wherein the optimized global power controlsolution comprises a set of local power control solutions that arecomputed by iteratively performing a power control optimizationalgorithm based at least in part on the set of power control parameters,and wherein the optimized global power control solution is determinedwithout performing a search of substantially all possible power controlsolutions for the wireless network; and sending the optimized globalpower control solution to the set of base stations in the wirelessnetwork.
 2. The method of claim 1, wherein probabilistically determiningthe optimized power control solution comprises: generating a set ofparent genes each of which comprises a set of first generation powercontrol solutions for the set of base stations; evolving the set ofparent genes through natural selection, crossover, mutation, orcombinations thereof to produce a set of descendent genes, wherein eachdescendent gene comprises a set of evolved power control solutions forthe set of base stations; evaluating a fitness of each descendent gene;and selecting one of the descendent genes in accordance with the fitnessevaluation, wherein the set of evolved power control solutions for theselected descendent genes is determined to be the optimized global powercontrol solution.
 3. The method of claim 2, wherein evaluating thefitness of each descendent gene comprises assigning each gene a fitnessvalue based on a projected suitability of the descendent gene as aglobal power control solution for the wireless network.
 4. The method ofclaim 2, wherein evaluating the fitness of each descendent genecomprises: generating a set of estimated interference over thermalvalues (IoTs) for each descendent gene; and evaluating the fitness ofeach descendent gene in accordance with the corresponding set of IoTs.5. The method of claim 4, wherein each set of IoTs includes an estimatedIoT for a first generation power control solution for each of therespective descendent genes, and wherein each estimated IoT indicates anestimated amount of interference realized by a corresponding basestation in instances where the corresponding descendent gene wasimplemented as a global power control solution in the wireless network.6. The method of claim 2, wherein generating the set of parent genescomprises randomly assigning power control settings to each of the firstgeneration power control solutions to achieve gene pool randomization.7. The method of claim 1, further comprising: denoting a plurality ofpower control solution parameters; defining an evaluation metric; andupdating power control parameters based on an underlying optimizationdesign.
 8. The method of claim 7, further comprising: repetitiouslyperforming the denoting, defining, and updating instructions until astop condition is reached.
 9. An apparatus comprising: a processor; anda computer readable storage medium storing programming for execution bythe processor, the programming including instructions to: receive a setof power control parameters from a set of base stations in a wirelessnetwork; probabilistically determine an optimized global power controlsolution for the wireless network, wherein the optimized global powercontrol solution comprises a set of local power control solutions thatare computed by iteratively performing a power control optimizationalgorithm based at least in part on the set of power control parameters,and wherein the optimized global power control solution is determinedwithout performing a search of substantially all possible power controlsolutions for the wireless network; and send the optimized global powercontrol solution to the set of base stations in the wireless network.10. The apparatus of claim 9, wherein the instructions toprobabilistically determine the optimized power control solution includeinstructions to: generate a set of parent genes each of which comprisesa set of first generation power control solutions for the set of basestations; evolve the set of parent genes through natural selection,crossover, mutation, or combinations thereof to produce a set ofdescendent genes, wherein each descendent gene comprises a set ofevolved power control solutions for the set of base stations; evaluate afitness of each descendent gene; and select one of the descendent genesin accordance with the fitness evaluation, wherein the set of evolvedpower control solutions for the selected descendent genes is determinedto be the optimized global power control solution.
 11. The apparatus ofclaim 10, wherein the instructions to evaluate the fitness of eachdescendent gene include instructions to assign each gene a fitness valuebased on a projected suitability of the descendent gene as a globalpower control solution for the wireless network.
 12. The apparatus ofclaim 10, wherein the instructions to evaluate the fitness of eachdescendent gene include instructions to: generate a set of estimatedinterference over thermal values (IoTs) for each descendent gene; andevaluate the fitness of each descendent gene in accordance with thecorresponding set of IoTs.
 13. The apparatus of claim 12, wherein eachset of IoTs includes an estimated IoT for a first generation powercontrol solution for each of the respective descendent genes, andwherein each estimated IoT indicates an estimated amount of interferencerealized by a corresponding base station in instances where thecorresponding descendent gene was implemented as a global power controlsolution in the wireless network.
 14. The apparatus of claim 10, whereinthe instructions to generate the set of parent genes includeinstructions to randomly assign power control settings to each of thefirst generation power control solutions to achieve gene poolrandomization.
 15. A computer program product comprising anon-transitory computer readable storage medium storing programming, theprogramming including instructions to: receive a set of power controlparameters from a set of base stations in a wireless network;probabilistically determine an optimized global power control solutionfor the wireless network, wherein the optimized global power controlsolution comprises a set of local power control solutions that arecomputed by iteratively performing a power control optimizationalgorithm based at least in part on the set of power control parameters,and wherein the optimized global power control solution is determinedwithout performing a search of substantially all possible power controlsolutions for the wireless network; and send the optimized global powercontrol solution to the set of base stations in the wireless network.16. The computer program product of claim 15, wherein the instructionsto probabilistically determine the optimized power control solutioninclude instructions to: generate a set of parent genes each of whichcomprises a set of first generation power control solutions for the setof base stations; evolve the set of parent genes through naturalselection, crossover, mutation, or combinations thereof to produce a setof descendent genes, wherein each descendent gene comprises a set ofevolved power control solutions for the set of base stations; evaluate afitness of each descendent gene; and select one of the descendent genesin accordance with the fitness evaluation, wherein the set of evolvedpower control solutions for the selected descendent genes is determinedto be the optimized global power control solution.
 17. The computerprogram product of claim 16, wherein the instructions to evaluate thefitness of each descendent gene include instructions to assign each genea fitness value based on a projected suitability of the descendent geneas a global power control solution for the wireless network.
 18. Thecomputer program product of claim 16, wherein the instructions toevaluate the fitness of each descendent gene include instructions to:generate a set of estimated interference over thermal values (IoTs) foreach descendent gene; and evaluate the fitness of each descendent genein accordance with the corresponding set of IoTs.
 19. The computerprogram product of claim 18, wherein each set of IoTs includes anestimated IoT for a first generation power control solution for each ofthe respective descendent genes, and wherein each estimated IoTindicates an estimated amount of interference realized by acorresponding base station in instances where the correspondingdescendent gene was implemented as a global power control solution inthe wireless network.
 20. The computer program product of claim 16,wherein the instructions to generate the set of parent genes includeinstructions to randomly assign power control settings to each of thefirst generation power control solutions to achieve gene poolrandomization.